The present invention generally relates to a method for managing communication resources between nodes of a network, and more particularly relates to a dynamic, time multiplex slot assignment method and apparatus, and even more particularly relates to methods and apparatus for assigning receive slots in a dynamic, time multiplex slot assignment communication system.
Mobile multi-hop packet radio networks are known for rapid and convenient deployment, self organization, mobility, and survivability. Such a network is illustrated in FIG. 1. A transmission from one node, from node N1of FIG. 1 for example, can be broadcast to all nodes in its xe2x80x9cneighborhoodxe2x80x9d. Ultra-high frequency (UHF) systems generally have a neighborhood defined by nodes located within line of sight of the transmitting node. The nodes of such a neighborhood are said to be located within one xe2x80x9chopxe2x80x9d of the transmitting node. In FIG. 1, for example, nodes N1, N3, N4, N5, N6, N7 and N8 are members of the neighborhood surrounding node N1.
Nodes N2, N9, N10, N11 and N12 are each located two hops away from node N1 and node N13 can be said to be three hops away from node N1. When data transmitted from node N1, is to be propagated multiple hops, the data must be relayed by one or more of node N1""s neighbors. For example, data transmitted by node N1, can be relayed by its neighbor node N8 to a node such as node N12 that is located two hops from node N1.
Receivers are generally capable of processing only one transmission at a time. Simultaneous transmissions, also known as collisions, contentions or conflicts, can be avoided by assigning a specific transmission time slot to each communicating node. Several approaches have been developed for assigning slots to nodes. The approach chosen for a particular application is generally a consequence of the type of network application (broadcast, multicast, unicast, datagrams, virtual circuits, etc.) at issue. Since the problem of optimally assigning slots is mathematically intractable, a heuristic approach has been applied. This approach resulted in the development of an integrated protocol that both chooses the number of slots to assign to each neighboring node and coordinates their activation in the network.
Many applications require self-organizing, wireless networks that can operate in dynamic environments and provide peer-to-peer, multi-hop, multimedia communications. Key to this technology is the ability of neighboring nodes to transmit without interference. Neighboring nodes transmit without interference by choosing time slots and channels that do not cause collisions at the intended unicast or multicast receivers. The Unifying Slot Assignment Protocol (USAP), which is disclosed in U.S. Pat. No. 5,719,868, provides a protocol establishing such a communication system. USAP is a dynamic assignment protocol that monitors the RF environment and allocates channel resources on demand. It automatically detects and resolves contention between nodes for time slots, such contention arising for example from changes in connectivity. U.S. Pat. No. 5,719,868, issued Feb. 17, 1998, is hereby incorporated herein by reference in its entirety, including all drawings and appendices.
USAP permits a node to assign itself transmit slots based on information it has regarding when it is assigned to transmit and receive and when a neighboring node is scheduled to transmit. In certain applications, however, it is desirable or necessary to have a node assign itself a receive slot instead of a transmit slot. For example, a node may need to assign itself a communication slot wherein it can receive from one, some or even all of its neighbors.
Consequently, there exists a need for a dynamic assignment communication system capable of accommodating nodes that assign themselves a receive slot. The present invention provides a method and apparatus that enables a node to assign itself a receive slot.
It is an object of the present invention to provide an enhanced dynamic assignment communication system wherein a node can assign itself a receive slot.
It is a feature of the present invention to enable a node to assign itself a receive slot by utilizing information identifying the slots in which that node""s neighbors"" neighbors are receiving.
It is an advantage of the present invention to enable a node to assign itself a receive slot in which it can receive from one, some or all of its neighbors.
It is another object of the present invention to provide an enhanced dynamic assignment communication system wherein a node can assign itself a broadcast receive slot.
It is another feature of the present invention to permit a node to receive in a broadcast receive slot by utilizing a code division multiple access protocol.
It is an another advantage of the present invention to enable a node to assign itself a broadcast receive slot in which it can receive from some or all of its neighbors simultaneously.
The present invention is an apparatus and method for assigning communication receive slots in a dynamic assignment protocol. For example, in a network having a plurality of nodes, communication can be accomplished via assignment of specific time slots of a time multiplex structure. The time multiplex structure is analyzed and a set of available time slots is determined. The dynamic assignment protocol permits the node to assign itself a time slot from the set of available time slots.
Further, the broadcast reception feature of the present invention is carried out in a xe2x80x9ccontention-lessxe2x80x9d manner such that collisions between communications transmitted during the receive slot are avoided. Broadcast reception can be accomplished in a variety of ways. For example, a broadcast receive slot can be shared via a scheduling scheme. Alternatively, a random access reservation method can be employed. Further, a code division multiple access technique can be used to allow neighbor nodes to simultaneously transmit during the broadcast receive slot.
Accordingly, the present invention is a heuristic enabling receiver directed assignment of receive slots in a dynamic slot assignment environment.